/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package pe.edu.sistemas.sse.entity;

import java.io.Serializable;
import java.util.Date;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToOne;
import javax.persistence.Table;
import org.hibernate.annotations.Proxy;

/**
 *
 * @author laptop-w8
 */
@Entity
@Table(name = "APTLN")
@Proxy(lazy = false)
public class Postulacion implements Serializable {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "CPTLN")
    private long id_postulacion;
    @Column(name = "DMSJ_PTLN")
    private String dmensaje;
    @Column(name = "DESTDSELEC_PTLN")
    private String destadoSeleccion;
    @Column(name = "FFECHA_PTLN")
    private Date fpostulacion;
    @ManyToOne(fetch = FetchType.EAGER)
    @JoinColumn(name = "CCONV", referencedColumnName = "CCONV", nullable = false)
    private Convocatoria convocatoria;
    @ManyToOne(fetch = FetchType.EAGER)
    @JoinColumn(name = "DCODALMN_EGRES", referencedColumnName = "DCODALMN_EGRES", nullable = false)
    private Egresado egresado;
    @OneToOne(cascade = {CascadeType.ALL}, mappedBy = "postulacion")
    @JoinColumn(name = "CCONTR")
    private Contrato contrato;

    public long getId_postulacion() {
        return id_postulacion;
    }

    public void setId_postulacion(long id_postulacion) {
        this.id_postulacion = id_postulacion;
    }

    public String getDmensaje() {
        return dmensaje;
    }

    public void setDmensaje(String dmensaje) {
        this.dmensaje = dmensaje;
    }

    public String getDestadoSeleccion() {
        return destadoSeleccion;
    }

    public void setDestadoSeleccion(String destadoSeleccion) {
        this.destadoSeleccion = destadoSeleccion;
    }

    public Date getFpostulacion() {
        return fpostulacion;
    }

    public void setFpostulacion(Date fpostulacion) {
        this.fpostulacion = fpostulacion;
    }

    public Convocatoria getConvocatoria() {
        return convocatoria;
    }

    public void setConvocatoria(Convocatoria convocatoria) {
        this.convocatoria = convocatoria;
    }

    public Egresado getEgresado() {
        return egresado;
    }

    public void setEgresado(Egresado egresado) {
        this.egresado = egresado;
    }

    public Contrato getContrato() {
        return contrato;
    }

    public void setContrato(Contrato contrato) {
        this.contrato = contrato;
    }

}
